32437017f5e13c3668fe12328364ed3cd8eac8eb,src/jexer/tterminal/ECMA48.java,ECMA48,keypressToString,#TKeypress#,1264
Before Change
}
}
if (keypress.equals(kbDown)) {
switch (arrowKeyMode) {
case ANSI:
return "\033[B";
case VT52:
return "\033B";
case VT100:
return "\033OB";
}
}
if (keypress.equals(kbHome)) {
switch (arrowKeyMode) {
case ANSI:
return "\033[H";
case VT52:
return "\033H";
case VT100:
return "\033OH";
}
}
if (keypress.equals(kbEnd)) {
switch (arrowKeyMode) {
case ANSI:
return "\033[F";
case VT52:
return "\033F";
case VT100:
return "\033OF";
}
}
if (keypress.equals(kbF1)) {
// PF1
if (vt52Mode) {
return "\033P";
}
return "\033OP";
}
if (keypress.equals(kbF2)) {
// PF2
if (vt52Mode) {
return "\033Q";
}
return "\033OQ";
}
if (keypress.equals(kbF3)) {
// PF3
if (vt52Mode) {
return "\033R";
}
return "\033OR";
}
if (keypress.equals(kbF4)) {
// PF4
if (vt52Mode) {
return "\033S";
}
return "\033OS";
}
if (keypress.equals(kbF5)) {
switch (type) {
case VT100:
return "\033Ot";
case VT102:
return "\033Ot";
case VT220:
return "\033[15~";
case XTERM:
return "\033[15~";
}
}
if (keypress.equals(kbF6)) {
switch (type) {
case VT100:
return "\033Ou";
case VT102:
return "\033Ou";
case VT220:
return "\033[17~";
case XTERM:
return "\033[17~";
}
}
if (keypress.equals(kbF7)) {
switch (type) {
case VT100:
return "\033Ov";
case VT102:
return "\033Ov";
case VT220:
return "\033[18~";
case XTERM:
return "\033[18~";
}
}
if (keypress.equals(kbF8)) {
switch (type) {
case VT100:
return "\033Ol";
case VT102:
return "\033Ol";
case VT220:
return "\033[19~";
case XTERM:
return "\033[19~";
}
}
if (keypress.equals(kbF9)) {
switch (type) {
case VT100:
return "\033Ow";
case VT102:
return "\033Ow";
case VT220:
return "\033[20~";
case XTERM:
return "\033[20~";
}
}
if (keypress.equals(kbF10)) {
switch (type) {
case VT100:
return "\033Ox";
case VT102:
return "\033Ox";
case VT220:
return "\033[21~";
case XTERM:
return "\033[21~";
}
}
if (keypress.equals(kbF11)) {
return "\033[23~";
}
if (keypress.equals(kbF12)) {
return "\033[24~";
}
if (keypress.equals(kbShiftF1)) {
// Shifted PF1
if (vt52Mode) {
return "\0332P";
}
return "\033O2P";
}
if (keypress.equals(kbShiftF2)) {
// Shifted PF2
if (vt52Mode) {
return "\0332Q";
}
return "\033O2Q";
}
if (keypress.equals(kbShiftF3)) {
// Shifted PF3
if (vt52Mode) {
return "\0332R";
}
return "\033O2R";
}
if (keypress.equals(kbShiftF4)) {
// Shifted PF4
if (vt52Mode) {
return "\0332S";
}
return "\033O2S";
}
if (keypress.equals(kbShiftF5)) {
// Shifted F5
return "\033[15;2~";
}
if (keypress.equals(kbShiftF6)) {
// Shifted F6
return "\033[17;2~";
}
if (keypress.equals(kbShiftF7)) {
// Shifted F7
return "\033[18;2~";
}
if (keypress.equals(kbShiftF8)) {
// Shifted F8
return "\033[19;2~";
}
if (keypress.equals(kbShiftF9)) {
// Shifted F9
return "\033[20;2~";
}
if (keypress.equals(kbShiftF10)) {
// Shifted F10
return "\033[21;2~";
}
if (keypress.equals(kbShiftF11)) {
// Shifted F11
return "\033[23;2~";
}
if (keypress.equals(kbShiftF12)) {
// Shifted F12
return "\033[24;2~";
}
if (keypress.equals(kbCtrlF1)) {
// Control PF1
if (vt52Mode) {
return "\0335P";
}
return "\033O5P";
}
if (keypress.equals(kbCtrlF2)) {
// Control PF2
if (vt52Mode) {
return "\0335Q";
}
return "\033O5Q";
}
if (keypress.equals(kbCtrlF3)) {
// Control PF3
if (vt52Mode) {
return "\0335R";
}
return "\033O5R";
}
if (keypress.equals(kbCtrlF4)) {
// Control PF4
if (vt52Mode) {
return "\0335S";
}
return "\033O5S";
}
if (keypress.equals(kbCtrlF5)) {
// Control F5
return "\033[15;5~";
}
if (keypress.equals(kbCtrlF6)) {
// Control F6
return "\033[17;5~";
}
if (keypress.equals(kbCtrlF7)) {
// Control F7
return "\033[18;5~";
}
if (keypress.equals(kbCtrlF8)) {
// Control F8
return "\033[19;5~";
}
if (keypress.equals(kbCtrlF9)) {
// Control F9
return "\033[20;5~";
}
if (keypress.equals(kbCtrlF10)) {
// Control F10
return "\033[21;5~";
}
if (keypress.equals(kbCtrlF11)) {
// Control F11
return "\033[23;5~";
}
if (keypress.equals(kbCtrlF12)) {
// Control F12
return "\033[24;5~";
}
if (keypress.equals(kbPgUp)) {
// Page Up
return "\033[5~";
}
if (keypress.equals(kbPgDn)) {
// Page Down
return "\033[6~";
}
if (keypress.equals(kbIns)) {
// Ins
return "\033[2~";
}
if (keypress.equals(kbShiftIns)) {
// This is what xterm sends for SHIFT-INS
return "\033[2;2~";
// This is what xterm sends for CTRL-INS
// return "\033[2;5~";
}
After Change
}
}
if (keypress.equalsWithoutModifiers(kbDown)) {
switch (type) {
case XTERM:
switch (arrowKeyMode) {
case ANSI:
return xtermBuildKeySequence("\033[", '1', 'B',
keypress.isCtrl(), keypress.isAlt(),
keypress.isShift());
case VT52:
return xtermBuildKeySequence("\033", '1', 'B',
keypress.isCtrl(), keypress.isAlt(),
keypress.isShift());
case VT100:
return xtermBuildKeySequence("\033O", '1', 'B',
keypress.isCtrl(), keypress.isAlt(),
keypress.isShift());
}
default:
switch (arrowKeyMode) {
case ANSI:
return "\033[B";
case VT52:
return "\033B";
case VT100:
return "\033OB";
}
}
}
if (keypress.equalsWithoutModifiers(kbHome)) {
switch (type) {
case XTERM:
switch (arrowKeyMode) {
case ANSI:
return xtermBuildKeySequence("\033[", '1', 'H',
keypress.isCtrl(), keypress.isAlt(),
keypress.isShift());
case VT52:
return xtermBuildKeySequence("\033", '1', 'H',
keypress.isCtrl(), keypress.isAlt(),
keypress.isShift());
case VT100:
return xtermBuildKeySequence("\033O", '1', 'H',
keypress.isCtrl(), keypress.isAlt(),
keypress.isShift());
}
default:
switch (arrowKeyMode) {
case ANSI:
return "\033[H";
case VT52:
return "\033H";
case VT100:
return "\033OH";
}
}
}
if (keypress.equalsWithoutModifiers(kbEnd)) {
switch (type) {
case XTERM:
switch (arrowKeyMode) {
case ANSI:
return xtermBuildKeySequence("\033[", '1', 'F',
keypress.isCtrl(), keypress.isAlt(),
keypress.isShift());
case VT52:
return xtermBuildKeySequence("\033", '1', 'F',
keypress.isCtrl(), keypress.isAlt(),
keypress.isShift());
case VT100:
return xtermBuildKeySequence("\033O", '1', 'F',
keypress.isCtrl(), keypress.isAlt(),
keypress.isShift());
}
default:
switch (arrowKeyMode) {
case ANSI:
return "\033[F";
case VT52:
return "\033F";
case VT100:
return "\033OF";
}
}
}
if (keypress.equals(kbF1)) {
// PF1
if (vt52Mode) {
return "\033P";
}
return "\033OP";
}
if (keypress.equals(kbF2)) {
// PF2
if (vt52Mode) {
return "\033Q";
}
return "\033OQ";
}
if (keypress.equals(kbF3)) {
// PF3
if (vt52Mode) {
return "\033R";
}
return "\033OR";
}
if (keypress.equals(kbF4)) {
// PF4
if (vt52Mode) {
return "\033S";
}
return "\033OS";
}
if (keypress.equals(kbF5)) {
switch (type) {
case VT100:
return "\033Ot";
case VT102:
return "\033Ot";
case VT220:
return "\033[15~";
case XTERM:
return "\033[15~";
}
}
if (keypress.equals(kbF6)) {
switch (type) {
case VT100:
return "\033Ou";
case VT102:
return "\033Ou";
case VT220:
return "\033[17~";
case XTERM:
return "\033[17~";
}
}
if (keypress.equals(kbF7)) {
switch (type) {
case VT100:
return "\033Ov";
case VT102:
return "\033Ov";
case VT220:
return "\033[18~";
case XTERM:
return "\033[18~";
}
}
if (keypress.equals(kbF8)) {
switch (type) {
case VT100:
return "\033Ol";
case VT102:
return "\033Ol";
case VT220:
return "\033[19~";
case XTERM:
return "\033[19~";
}
}
if (keypress.equals(kbF9)) {
switch (type) {
case VT100:
return "\033Ow";
case VT102:
return "\033Ow";
case VT220:
return "\033[20~";
case XTERM:
return "\033[20~";
}
}
if (keypress.equals(kbF10)) {
switch (type) {
case VT100:
return "\033Ox";
case VT102:
return "\033Ox";
case VT220:
return "\033[21~";
case XTERM:
return "\033[21~";
}
}
if (keypress.equals(kbF11)) {
return "\033[23~";
}
if (keypress.equals(kbF12)) {
return "\033[24~";
}
if (keypress.equals(kbShiftF1)) {
// Shifted PF1
if (vt52Mode) {
return "\0332P";
}
if (type == DeviceType.XTERM) {
return "\0331;2P";
}
return "\033O2P";
}
if (keypress.equals(kbShiftF2)) {
// Shifted PF2
if (vt52Mode) {
return "\0332Q";
}
if (type == DeviceType.XTERM) {
return "\0331;2Q";
}
return "\033O2Q";
}
if (keypress.equals(kbShiftF3)) {
// Shifted PF3
if (vt52Mode) {
return "\0332R";
}
if (type == DeviceType.XTERM) {
return "\0331;2R";
}
return "\033O2R";
}
if (keypress.equals(kbShiftF4)) {
// Shifted PF4
if (vt52Mode) {
return "\0332S";
}
if (type == DeviceType.XTERM) {
return "\0331;2S";
}
return "\033O2S";
}
if (keypress.equals(kbShiftF5)) {
// Shifted F5
return "\033[15;2~";
}
if (keypress.equals(kbShiftF6)) {
// Shifted F6
return "\033[17;2~";
}
if (keypress.equals(kbShiftF7)) {
// Shifted F7
return "\033[18;2~";
}
if (keypress.equals(kbShiftF8)) {
// Shifted F8
return "\033[19;2~";
}
if (keypress.equals(kbShiftF9)) {
// Shifted F9
return "\033[20;2~";
}
if (keypress.equals(kbShiftF10)) {
// Shifted F10
return "\033[21;2~";
}
if (keypress.equals(kbShiftF11)) {
// Shifted F11
return "\033[23;2~";
}
if (keypress.equals(kbShiftF12)) {
// Shifted F12
return "\033[24;2~";
}
if (keypress.equals(kbCtrlF1)) {
// Control PF1
if (vt52Mode) {
return "\0335P";
}
if (type == DeviceType.XTERM) {
return "\0331;5P";
}
return "\033O5P";
}
if (keypress.equals(kbCtrlF2)) {
// Control PF2
if (vt52Mode) {
return "\0335Q";
}
if (type == DeviceType.XTERM) {
return "\0331;5Q";
}
return "\033O5Q";
}
if (keypress.equals(kbCtrlF3)) {
// Control PF3
if (vt52Mode) {
return "\0335R";
}
if (type == DeviceType.XTERM) {
return "\0331;5R";
}
return "\033O5R";
}
if (keypress.equals(kbCtrlF4)) {
// Control PF4
if (vt52Mode) {
return "\0335S";
}
if (type == DeviceType.XTERM) {
return "\0331;5S";
}
return "\033O5S";
}
if (keypress.equals(kbCtrlF5)) {
// Control F5
return "\033[15;5~";
}
if (keypress.equals(kbCtrlF6)) {
// Control F6
return "\033[17;5~";
}
if (keypress.equals(kbCtrlF7)) {
// Control F7
return "\033[18;5~";
}
if (keypress.equals(kbCtrlF8)) {
// Control F8
return "\033[19;5~";
}
if (keypress.equals(kbCtrlF9)) {
// Control F9
return "\033[20;5~";
}
if (keypress.equals(kbCtrlF10)) {
// Control F10
return "\033[21;5~";
}
if (keypress.equals(kbCtrlF11)) {
// Control F11
return "\033[23;5~";
}
if (keypress.equals(kbCtrlF12)) {
// Control F12
return "\033[24;5~";
}
if (keypress.equalsWithoutModifiers(kbPgUp)) {
switch (type) {
case XTERM:
switch (arrowKeyMode) {